The present invention relates to a method and system for high speed processing of an expert system, and more particularly to a method and system for inference processing for translating rules and facts to an instruction sequence of a computer machine language to realize high speed inference.
"An Abstract PROLOG Instruction Set" by D. H. D. Warren, SRI International Technical Note, No. 309, 1983, pp 1-30 teaches an instruction-set which is useful in implementing software and hardware by effectively utilizing pattern matching function and backtrack function of the logical language PROLOG for constructing a high speed inference engine of an expert system by using the pattern matching function of the logical language PROLOG. In the prior art, a function of "Getting instantiation comprising a combination of executable rules and facts which meet the conditions thereof to generate a conflict set" which is an essential function of the inference engine cannot be attained in an efficient manner. The PROLOG basically determines only one executable rule by the pattern matching function which is called unification for setting a value to a variable and the backtrack function for automatically backtracking to select another rule. Accordingly, it is essentially not suitable to "getting all executable rules" which is the essential function of the inference engine. In the prior art, the instantiation set is realized by fact statements of the PROLOG. It is necessary to add a fact statement by using a built in predicate "assert" of the PROLOG in the execution stage of the inference, and delete a fact statement by using a built in predicate "retract". As a result, high speed processing is difficult to attain.